package com.junzhiit.nengji.cms.service;

import java.util.Map;

import com.junzhiit.nengji.cms.web.vo.DataTablesParamVO;
import com.junzhiit.nengji.cms.web.vo.OrdersCheckVO;
import com.junzhiit.nengji.cms.web.vo.OrdersCodeVO;
import com.junzhiit.nengji.cms.web.vo.OrdersListVO;
import com.junzhiit.nengji.cms.web.vo.OrdersPriceVO;
import com.junzhiit.nengji.cms.web.vo.OrdersVO;
import com.junzhiit.nengji.cms.web.vo.ResultVO;
import com.junzhiit.nengji.model.Orders;

public interface OrdersService {

	public Map<String, Object> findAll(DataTablesParamVO dtp,OrdersListVO ordersListVO);
	
	public OrdersVO findOrderId(String orderId);
	
	public ResultVO update(Orders order);
	
	public ResultVO getOrderById(String orderId);
	
	public ResultVO updateLogistics(String ordersId,String logisticsId,String logisticsNumber);
	/**
	 * 
	 * TODO 默认确认收货
	 * 
	 * @author Qjen
	 * @time 2018年4月18日 上午1:01:58
	 * @return ResultVO
	 *
	 */
	public ResultVO defaultRecerve();
	
	/**
	 * 
	 * TODO 更改订单金额
	 * @author Zaki
	 * @time 2018年3月23日 下午2:47:13
	 * @return ResultVO
	 */
	public ResultVO updateOrdersPrice(OrdersPriceVO ordersPriceVO);
	
	/**
	 * 
	 * TODO 获取核销订单
	 * 
	 * @author FebRosy
	 * @time 2018年3月29日 上午11:13:19
	 * @return ResultVO
	 */
	public ResultVO getcheckOrders(OrdersCheckVO ordersCheckVO);
	
	
	public ResultVO checkOrdersCode(OrdersCodeVO ordersCodeVO);
	
	/**
	 * 
	 * TODO 根据定时器修改订单状态(取消订单)
	 * @author PeterMo
	 * @time 2018年4月18日 上午1:28:29
	 * @return void
	 */
	public void updateStatus();
	
	/**
	 * 
	 * TODO 查询付款订单记录条数
	 * @author Qjen
	 * @time 2018年5月9日 下午8:01:12
	 * @return ResultVO
	 */
	public ResultVO getPaidOrderCount(String sessionId);
	
	/**
	 * 
	 * TODO 查询订单优惠金额
	 * @author Zaki
	 * @time 2018年7月21日 下午2:53:47
	 * @return int
	 */
	public ResultVO findCoupons(String orderId);
	

	/**
	 * 
	 * TODO 根据定时器 确认收货7天后加入资产
	 * @author PeterMo
	 * @time 2018年4月18日 上午1:28:29
	 * @return void
	 */
	public void joinProperty();
	
	/**
	 * 
	 * TODO 配送的餐饮订单一天后自动确认完成交易
	 * @author Zaki
	 * @time 2018年7月28日 下午8:10:21
	 * @return void
	 */
	public void confirmOrders();
	
	/**
	 * 
	 * TODO  查询预约订单的信息
	 * @author Zaki
	 * @time 2018年9月18日 下午3:07:55
	 * @return ResultVO
	 */
	public ResultVO findReserveInfo(String ordersId);
	
}
